package com.haixiaoke.saas.role.service;

import com.haixiaoke.saas.role.domain.BizRoleDept;

import java.util.List;

/**
 * 企业端角色和部门关联Service接口
 * 
 * @author panda
 * @date 2023-12-29
 */
public interface IBizRoleDeptService {
    /**
     * 查询企业端角色和部门关联
     * 
     * @param roleId 企业端角色和部门关联主键
     * @return 企业端角色和部门关联
     */
    BizRoleDept selectBizRoleDeptByRoleId(Long roleId);

    /**
     * 查询企业端角色和部门关联列表
     * 
     * @param bizRoleDept 企业端角色和部门关联
     * @return 企业端角色和部门关联集合
     */
    List<BizRoleDept> selectBizRoleDeptList(BizRoleDept bizRoleDept);

    /**
     * 新增企业端角色和部门关联
     * 
     * @param bizRoleDept 企业端角色和部门关联
     * @return 结果
     */
    int insertBizRoleDept(BizRoleDept bizRoleDept);

    /**
     * 修改企业端角色和部门关联
     * 
     * @param bizRoleDept 企业端角色和部门关联
     * @return 结果
     */
    int updateBizRoleDept(BizRoleDept bizRoleDept);

    /**
     * 批量删除企业端角色和部门关联
     * 
     * @param roleIds 需要删除的企业端角色和部门关联主键集合
     * @return 结果
     */
     int deleteBizRoleDeptByRoleIds(Long[] roleIds);

    /**
     * 删除企业端角色和部门关联信息
     * 
     * @param roleId 企业端角色和部门关联主键
     * @return 结果
     */
     int deleteBizRoleDeptByRoleId(Long roleId);

    /**
     * 批量新增角色部门信息
     *
     * @param list 角色部门列表
     * @return 结果
     */
    int batchRoleDept(List<BizRoleDept> list);
}
